<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>

</html>
<script>
    //一.函数的注意事项。
    //1.优点：函数是用来帮助我们封装、重用、扩展及调用代码的最方便的工具！
    //封装：打包任意条语句。
    //重用：重复使用。
    //扩展：函数的自身的功能+函数的参数。

    //2.函数名实际上也是一个指向函数对象的指针（函数名等同于函数体）

    //3.函数的类型是独有的，属于function类型
    // function fn() {
    //     return 'hello';
    // }
    // console.log(typeof fn); //function


    //4.声明的函数如果不调用，函数相当于不存在。通过调用找函数。
    // function fn() {
    //     dfjalkdsjflkdasjflkjflkads
    // }

    //二.函数的应用 - 将常见的功能进行封装，减少代码冗余(重复)。
    // 1.编写一个函数，计算两个数字的和、差、积、商（要求：使用传参的形式）.
    function calc(n1, n2, option) { //n1,n2:两个数字  option:符号
        switch (option) {
            case '+':
                return n1 + n2;
            case '-':
                return n1 - n2;
            case '*':
                return n1 * n2;
            case '/':
                return n1 / n2;
            default:
                return '输入有误';
        }
    }

    console.log(calc(3, 5, '+'));
    console.log(calc(3, 5, '-'));
    console.log(calc(3, 5, '*'));
    console.log(calc(3, 5, '/'));
    console.log(calc(3, 5, 'xxxxx'));

    //2.编写一个函数，计算三个数字的大小，按从小到大顺序输出。
    //如何交换两个变量的顺序。
    var a = 250;
    var b = 360;
    //引入中间变量。
    var temp = a; //temp=250
    a = b; //a=360
    b = temp; //b=250

    console.log(a, b); //360 250


    function compare(a, b, c) {
        //两两比较，如果第一个数比第二个数大，交换位置。
        if (a > b) {
            var temp = a;
            a = b;
            b = temp;
        }

        if (a > c) {
            var temp = a;
            a = c;
            c = temp;
        }

        if (b > c) {
            var temp = b;
            b = c;
            c = temp;
        }
        return a + ',' + b + ',' + c;
    }

    console.log(compare(23, 4, 57));//57 23 4
</script>